#include "mainwindow.h"
#include "ui_mainwindow.h"
#include <QDockWidget>
#include <QVBoxLayout>
#include <QLabel>

MainWindow::MainWindow(QWidget *parent)
    : QMainWindow(parent)
    , ui(new Ui::MainWindow)
{
    ui->setupUi(this);

    this->setWindowTitle("这是主窗口");

    // 创建子窗口
    QDockWidget *docker = new QDockWidget(this);
    // 将子窗口添加到主窗口中
    this->addDockWidget(Qt::RightDockWidgetArea, docker);
    // 给子窗口设置标题
    docker->setWindowTitle("这是子窗口");
    // 设置子窗口可以停靠的位置
    docker->setAllowedAreas(Qt::LeftDockWidgetArea | Qt::RightDockWidgetArea);

    // 给子窗口内部添加控件只能创建出一个单独的QWidget，
    // 把想加入的控件添加到QWidget中，然后再将QWidget给加到子窗口中
    QWidget *widget = new QWidget();
    docker->setWidget(widget);

    // 给子窗口添加布局管理器
    QVBoxLayout *layout = new QVBoxLayout();
    widget->setLayout(layout);

    QLabel *label1 = new QLabel("子窗口1");
    layout->addWidget(label1);
    QLabel *label2 = new QLabel("子窗口2");
    layout->addWidget(label2);
    QLabel *label3 = new QLabel("子窗口3");
    layout->addWidget(label3);

//    docker->setLayout(layout);
}

MainWindow::~MainWindow()
{
    delete ui;
}

